Unless otherwise indicated herein, the materials described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
With the advance of networking and data storage technologies, an increasingly large number of computing services are being provided to users or customers by cloud-based datacenters that can enable access to computing resources at various levels. Cloud-based service providers may provide individuals and organizations with a range of solutions for systems deployment and operation. Depending on customer needs, datacenter capabilities, and associated costs, services provided to customers may be defined by Service Level Agreements (SLAs) describing aspects such as server latency, storage limits or quotas, processing power, scalability factors, backup guarantees, uptime guarantees, resource usage reporting, and similar ones.
The success of cloud-based services means that more and more applications and databases are being moved to the cloud. Customers (or tenants) typically prefer to have the option of moving applications and databases from one service provider to another while maintaining service parameters like performance, cost, liability, and similar ones. Service providers may prefer to have the option of moving an application or database from one site to another while maintaining performance and service level of the application.
When databases are moved between different service providers, database performance may not necessarily be maintained. Furthermore, the data structures of a particular database may not be easily transferrable between service providers, and redesigning the database for a new service provider may be resource-expensive.